(function($){ $.easyTabs ={ init: function(selector, options){ var obj = $('#' + selector); var defaults = { width: '700px', height: '50px', ajax: false, callback:'' } var options = $.extend(defaults, options); obj.css({'min-width': options.width, 'min-height': options.height}) obj.attr('cb', options.callback); $('> .divs > div', obj).hide(); $('> .divs > div:first', obj).fadeIn(600); $('> .divs > div:first', obj).show(); $('> .divs > div', obj).each(function(index) { var id="tab_" + index + selector; $(this).attr('id', id ); }); $('> .tabs > div a', obj).each(function(index) { var hr="#tab_" + index + selector; $(this).attr('href', hr ); }); $('> .tabs > div:first', obj).addClass('active'); $('> .tabs > div a', obj).click(function(){ var base=$(this).parent().parent().parent(); var currentTab = $(this).attr('href'); var isenabled=($(this).parent().hasClass('disabled') || $(this).parent().hasClass('active')); if(!isenabled){ $('> .divs > div', base).hide(); $('> .tabs > div', base).removeClass('active'); $(this).parent().addClass('active'); var load=$(this).parent().attr('href'); if(options.ajax && load != undefined && load !="" && options.callback!=''){ eval(options.callback)(currentTab,load) } $(currentTab).fadeIn(400); $(currentTab).show(); } function mget(){ return ("hola"); } return false; }); }, disable: function(selector, index){ var obj = $('#' + selector + ' > .tabs > div'); $(obj).eq(index).addClass('disabled'); }, enable: function(selector, index){ var obj = $('#' + selector + ' > .tabs > div'); $(obj).eq(index).removeClass('disabled'); }, select: function(selector, index){ var obj = $('#' + selector + ' > .divs > div'); var objt = $('#' + selector + ' > .tabs > div'); $(obj).hide(); $(objt).removeClass('active'); $(objt).eq(index).addClass('active') $(obj).eq(index).fadeIn(600) $(obj).eq(index).show() }, getURL: function(selector, index){ var sel = $('#' + selector); var obj = $('#' + selector + ' > .tabs > div'); var atag= obj.eq(index).children("a") var href=Array() href[0]=atag.attr('href') href[1]=atag.parent().attr('href') return href }, load: function(selector, index){ var sel = $('#' + selector); var obj = $('#' + selector + ' > .tabs > div'); var atag= obj.eq(index).children("a") eval(sel.attr('cb'))(atag.attr('href'), atag.parent().attr('href')) //$(obj).eq(index).trigger("click") /* var currentTab = $(obj).eq(index).attr('href') var load=$(obj).eq(index).parent().attr('href'); alert($(obj).eq(index).parent().attr('href')) options.callback(currentTab, load) */ //prop('tagName')) } } })(jQuery);